using System;
using System.Collections.Generic;
using System.Text;

namespace Stratman.Utilities.NetFlix
{
    /// <summary>
    /// Exception that is thrown when a NetFlix login attempt for a given email address fails.
    /// </summary>
    public class LoginFailedException : Exception
    {
        /// <summary>
        /// Default constructor.
        /// </summary>
        public LoginFailedException()
            : base()
        {
        }

        /// <summary>
        /// Constructor that allows the user to pass in the email of the failed login attempt.
        /// </summary>
        /// <param name="email">
        /// Email for which this login attempt failed.
        /// </param>
        public LoginFailedException(string email)
            : base("NetFlix login for the email \"" + email + "\" failed.")
        {
        }

        /// <summary>
        /// Constructor that allows the user to provide an email for the failed login attempt as
        /// well as an inner exception.
        /// </summary>
        /// <param name="email">
        /// Email for which this login attempt failed.
        /// </param>
        /// <param name="innerException">
        /// Inner exception for the current exception.
        /// </param>
        public LoginFailedException(string email, Exception innerException)
            : base("NetFlix login for the email \"" + email + "\" failed.", innerException)
        {
        }
    }
}
